package com.itheima.collection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.function.Predicate;

/**
 * 集合Collection接口的 抽象方法
 * boolean add(E e)添加元素
 * boolean remove(Object o)从集合中移除指定的元素
 * boolean removeIf(Predicate<? super E>  filter)根据条件进行移除
 * void   clear()清空集合中的元素
 * boolean contains(Object o)判断集合中是否存在指定的元素
 * boolean isEmpty()判断集合是否为空
 * int   size()集合的长度，也就是集合中元素的个数
 */
public class Test01 {


    public static void main(String[] args) {
        //创建集合对象
        Collection<String> collection = new ArrayList<>();//多态
        //添加元素
        collection.add("蔡徐坤");
        collection.add("吴亦凡");
        collection.add("黄子韬");
        collection.add("鹿晗");
        collection.add("蔡徐坤");

        System.out.println(collection);
        //boolean remove(Object o)从集合中移除指定的元素
        /*collection.remove("蔡徐坤");
        System.out.println(collection);*/
        //boolean removeIf(Predicate<? super E>  filter)根据条件进行移除
    /*    collection.removeIf(x->x.equals("蔡徐坤"));//removeIf 自带遍历  后面的lambda 表大使负责判断
        System.out.println(collection);*/
       //removeIf(boolean flag)
       //removeIf(Object o)
       collection.removeIf(new Predicate<String>() {
           @Override
           public boolean test(String s) {

               return s.equals("吴亦凡");
           }
       });
        System.out.println(collection);
   /*    collection.clear();
        System.out.println(collection);
*/
        //boolean contains(Object o)判断集合中是否存在指定的元素
       /* boolean result1 = collection.contains("吴亦凡");
        System.out.println(result1);
        boolean result2 = collection.contains("小宅");
        System.out.println(result2);*/
        //boolean isEmpty()判断集合是否为空
       /* collection.clear();
        System.out.println(collection.isEmpty());*/
       // int   size()集合的长度，也就是集合中元素的个数
        System.out.println(collection.size());
    }

}
